import { SVGProps } from 'react'

export function FaSolidSmile(props: SVGProps<SVGSVGElement>) {
  return (
    <svg width="0.97em" height="1em" viewBox="0 0 496 512" {...props}>
      <path
        fill="currentColor"
        d="M248 8C111 8 0 119 0 256s111 248 248 248s248-111 248-248S385 8 248 8zm80 168c17.7 0 32 14.3 32 32s-14.3 32-32 32s-32-14.3-32-32s14.3-32 32-32zm-160 0c17.7 0 32 14.3 32 32s-14.3 32-32 32s-32-14.3-32-32s14.3-32 32-32zm194.8 170.2C334.3 380.4 292.5 400 248 400s-86.3-19.6-114.8-53.8c-13.6-16.3 11-36.7 24.6-20.5c22.4 26.9 55.2 42.2 90.2 42.2s67.8-15.4 90.2-42.2c13.4-16.2 38.1 4.2 24.6 20.5z"
      ></path>
    </svg>
  )
}

export function FaSolidSadCry(props: SVGProps<SVGSVGElement>) {
  return (
    <svg width="0.97em" height="1em" viewBox="0 0 496 512" {...props}>
      <path
        fill="currentColor"
        d="M248 8C111 8 0 119 0 256c0 90.1 48.2 168.7 120 212.1V288c0-8.8 7.2-16 16-16s16 7.2 16 16v196.7c29.5 12.4 62 19.3 96 19.3s66.5-6.9 96-19.3V288c0-8.8 7.2-16 16-16s16 7.2 16 16v180.1C447.8 424.7 496 346 496 256C496 119 385 8 248 8zm-65.5 216.5c-14.8-13.2-46.2-13.2-61 0L112 233c-3.8 3.3-9.3 4-13.7 1.6c-4.4-2.4-6.9-7.4-6.1-12.4c4-25.2 34.2-42.1 59.9-42.1S208 197 212 222.2c.8 5-1.7 10-6.1 12.4c-5.8 3.1-11.2.7-13.7-1.6l-9.7-8.5zM248 416c-26.5 0-48-28.7-48-64s21.5-64 48-64s48 28.7 48 64s-21.5 64-48 64zm149.8-181.5c-5.8 3.1-11.2.7-13.7-1.6l-9.5-8.5c-14.8-13.2-46.2-13.2-61 0L304 233c-3.8 3.3-9.3 4-13.7 1.6c-4.4-2.4-6.9-7.4-6.1-12.4c4-25.2 34.2-42.1 59.9-42.1S400 197 404 222.2c.6 4.9-1.8 9.9-6.2 12.3z"
      ></path>
    </svg>
  )
}

export function FaSolidSadTear(props: SVGProps<SVGSVGElement>) {
  return (
    <svg width="0.97em" height="1em" viewBox="0 0 496 512" {...props}>
      <path
        fill="currentColor"
        d="M248 8C111 8 0 119 0 256s111 248 248 248s248-111 248-248S385 8 248 8zm80 168c17.7 0 32 14.3 32 32s-14.3 32-32 32s-32-14.3-32-32s14.3-32 32-32zM152 416c-26.5 0-48-21-48-47c0-20 28.5-60.4 41.6-77.8c3.2-4.3 9.6-4.3 12.8 0C171.5 308.6 200 349 200 369c0 26-21.5 47-48 47zm16-176c-17.7 0-32-14.3-32-32s14.3-32 32-32s32 14.3 32 32s-14.3 32-32 32zm170.2 154.2C315.8 367.4 282.9 352 248 352c-21.2 0-21.2-32 0-32c44.4 0 86.3 19.6 114.7 53.8c13.8 16.4-11.2 36.5-24.5 20.4z"
      ></path>
    </svg>
  )
}

export function FaSolidAngry(props: SVGProps<SVGSVGElement>) {
  return (
    <svg width="0.97em" height="1em" viewBox="0 0 496 512" {...props}>
      <path
        fill="currentColor"
        d="M248 8C111 8 0 119 0 256s111 248 248 248s248-111 248-248S385 8 248 8zM136 240c0-9.3 4.1-17.5 10.5-23.4l-31-9.3c-8.5-2.5-13.3-11.5-10.7-19.9c2.5-8.5 11.4-13.2 19.9-10.7l80 24c8.5 2.5 13.3 11.5 10.7 19.9c-2.1 6.9-8.4 11.4-15.3 11.4c-.5 0-1.1-.2-1.7-.2c.7 2.7 1.7 5.3 1.7 8.2c0 17.7-14.3 32-32 32S136 257.7 136 240zm168 154.2c-27.8-33.4-84.2-33.4-112.1 0c-13.5 16.3-38.2-4.2-24.6-20.5c20-24 49.4-37.8 80.6-37.8s60.6 13.8 80.6 37.8c13.8 16.5-11.1 36.6-24.5 20.5zm76.6-186.9l-31 9.3c6.3 5.8 10.5 14.1 10.5 23.4c0 17.7-14.3 32-32 32s-32-14.3-32-32c0-2.9.9-5.6 1.7-8.2c-.6.1-1.1.2-1.7.2c-6.9 0-13.2-4.5-15.3-11.4c-2.5-8.5 2.3-17.4 10.7-19.9l80-24c8.4-2.5 17.4 2.3 19.9 10.7c2.5 8.5-2.3 17.4-10.8 19.9z"
      ></path>
    </svg>
  )
}

export function FaSolidTired(props: SVGProps<SVGSVGElement>) {
  return (
    <svg width="0.97em" height="1em" viewBox="0 0 496 512" {...props}>
      <path
        fill="currentColor"
        d="M248 8C111 8 0 119 0 256s111 248 248 248s248-111 248-248S385 8 248 8zm33.8 189.7l80-48c11.6-6.9 24 7.7 15.4 18L343.6 208l33.6 40.3c8.7 10.4-3.9 24.8-15.4 18l-80-48c-7.7-4.7-7.7-15.9 0-20.6zm-163-30c-8.6-10.3 3.8-24.9 15.4-18l80 48c7.8 4.7 7.8 15.9 0 20.6l-80 48c-11.5 6.8-24-7.6-15.4-18l33.6-40.3l-33.6-40.3zM248 288c51.9 0 115.3 43.8 123.2 106.7c1.7 13.6-8 24.6-17.7 20.4c-25.9-11.1-64.4-17.4-105.5-17.4s-79.6 6.3-105.5 17.4c-9.8 4.2-19.4-7-17.7-20.4C132.7 331.8 196.1 288 248 288z"
      ></path>
    </svg>
  )
}

export function FaSolidMeh(props: SVGProps<SVGSVGElement>) {
  return (
    <svg width="0.97em" height="1em" viewBox="0 0 496 512" {...props}>
      <path
        fill="currentColor"
        d="M248 8C111 8 0 119 0 256s111 248 248 248s248-111 248-248S385 8 248 8zm-80 168c17.7 0 32 14.3 32 32s-14.3 32-32 32s-32-14.3-32-32s14.3-32 32-32zm176 192H152c-21.2 0-21.2-32 0-32h192c21.2 0 21.2 32 0 32zm-16-128c-17.7 0-32-14.3-32-32s14.3-32 32-32s32 14.3 32 32s-14.3 32-32 32z"
      ></path>
    </svg>
  )
}

export function FaSolidGrinSquintTears(props: SVGProps<SVGSVGElement>) {
  return (
    <svg width="1em" height="1em" viewBox="0 0 512 512" {...props}>
      <path
        fill="currentColor"
        d="M409.6 111.9c22.6-3.2 73.5-12 88.3-26.8c19.2-19.2 18.9-50.6-.7-70.2S446-5 426.9 14.2c-14.8 14.8-23.5 65.7-26.8 88.3c-.8 5.5 3.9 10.2 9.5 9.4zM102.4 400.1c-22.6 3.2-73.5 12-88.3 26.8c-19.1 19.1-18.8 50.6.8 70.2s51 19.9 70.2.7c14.8-14.8 23.5-65.7 26.8-88.3c.8-5.5-3.9-10.2-9.5-9.4zm311.7-256.5c-33 3.9-48.6-25.1-45.7-45.7c3.4-24 7.4-42.1 11.5-56.5C285.1-13.4 161.8-.5 80.6 80.6C-.5 161.7-13.4 285 41.4 379.9c14.4-4.1 32.4-8 56.5-11.5c33.2-3.9 48.6 25.2 45.7 45.7c-3.4 24-7.4 42.1-11.5 56.5c94.8 54.8 218.1 41.9 299.3-39.2s94-204.4 39.2-299.3c-14.4 4.1-32.5 8-56.5 11.5zM255.7 106c3.3-13.2 22.4-11.5 23.6 1.8l4.8 52.3l52.3 4.8c13.4 1.2 14.9 20.3 1.8 23.6l-90.5 22.6c-8.9 2.2-16.7-5.9-14.5-14.5l22.5-90.6zm-90.9 230.3L160 284l-52.3-4.8c-13.4-1.2-14.9-20.3-1.8-23.6l90.5-22.6c8.8-2.2 16.7 5.8 14.5 14.5L188.3 338c-3.1 13.2-22.2 11.7-23.5-1.7zm215.7 44.2c-29.3 29.3-75.7 50.4-116.7 50.4c-18.9 0-36.6-4.5-51-14.7c-9.8-6.9-8.7-21.8 2-27.2c28.3-14.6 63.9-42.4 97.8-76.3s61.7-69.6 76.3-97.8c5.4-10.5 20.2-11.9 27.3-2c32.3 45.3 7.1 124.7-35.7 167.6z"
      ></path>
    </svg>
  )
}

export function FaSolidFrownOpen(props: SVGProps<SVGSVGElement>) {
  return (
    <svg width="0.97em" height="1em" viewBox="0 0 496 512" {...props}>
      <path
        fill="currentColor"
        d="M248 8C111 8 0 119 0 256s111 248 248 248s248-111 248-248S385 8 248 8zM136 208c0-17.7 14.3-32 32-32s32 14.3 32 32s-14.3 32-32 32s-32-14.3-32-32zm187.3 183.3c-31.2-9.6-59.4-15.3-75.3-15.3s-44.1 5.7-75.3 15.3c-11.5 3.5-22.5-6.3-20.5-18.1c7-40 60.1-61.2 95.8-61.2s88.8 21.3 95.8 61.2c2 11.9-9.1 21.6-20.5 18.1zM328 240c-17.7 0-32-14.3-32-32s14.3-32 32-32s32 14.3 32 32s-14.3 32-32 32z"
      ></path>
    </svg>
  )
}

export function FaSolidGrimace(props: SVGProps<SVGSVGElement>) {
  return (
    <svg width="0.97em" height="1em" viewBox="0 0 496 512" {...props}>
      <path
        fill="currentColor"
        d="M248 8C111 8 0 119 0 256s111 248 248 248s248-111 248-248S385 8 248 8zM144 400h-8c-17.7 0-32-14.3-32-32v-8h40v40zm0-56h-40v-8c0-17.7 14.3-32 32-32h8v40zm-8-136c0-17.7 14.3-32 32-32s32 14.3 32 32s-14.3 32-32 32s-32-14.3-32-32zm72 192h-48v-40h48v40zm0-56h-48v-40h48v40zm64 56h-48v-40h48v40zm0-56h-48v-40h48v40zm64 56h-48v-40h48v40zm0-56h-48v-40h48v40zm-8-104c-17.7 0-32-14.3-32-32s14.3-32 32-32s32 14.3 32 32s-14.3 32-32 32zm64 128c0 17.7-14.3 32-32 32h-8v-40h40v8zm0-24h-40v-40h8c17.7 0 32 14.3 32 32v8z"
      ></path>
    </svg>
  )
}

export function FaSolidFlushed(props: SVGProps<SVGSVGElement>) {
  return (
    <svg width="0.97em" height="1em" viewBox="0 0 496 512" {...props}>
      <path
        fill="currentColor"
        d="M344 200c-13.3 0-24 10.7-24 24s10.7 24 24 24s24-10.7 24-24s-10.7-24-24-24zm-192 0c-13.3 0-24 10.7-24 24s10.7 24 24 24s24-10.7 24-24s-10.7-24-24-24zM248 8C111 8 0 119 0 256s111 248 248 248s248-111 248-248S385 8 248 8zM80 224c0-39.8 32.2-72 72-72s72 32.2 72 72s-32.2 72-72 72s-72-32.2-72-72zm232 176H184c-21.2 0-21.2-32 0-32h128c21.2 0 21.2 32 0 32zm32-104c-39.8 0-72-32.2-72-72s32.2-72 72-72s72 32.2 72 72s-32.2 72-72 72z"
      ></path>
    </svg>
  )
}
